<html>
<head>
  <script src="OLLoader.js"></script>
  <script type="text/javascript">
    var icon; 
    
    function test_Icon_constructor (t) {
        t.plan( 4 );
        var size = new OpenLayers.Size(5,6);
        icon = new OpenLayers.Icon("", size);
        t.ok( icon instanceof OpenLayers.Icon, "new OpenLayers.Icon returns Icon object" );
        t.ok( icon.size instanceof OpenLayers.Size, "icon.size returns Size object" );
        t.ok( icon.size.equals(size), "icon.size returns correct value" );
        t.eq( icon.url, "", "icon.url returns str object" );
    }
    function test_Icon_clone (t) {
        t.plan( 4 );
        icon = new OpenLayers.Icon("a",new OpenLayers.Size(5,6));
        t.ok( icon instanceof OpenLayers.Icon, "new OpenLayers.Icon returns Icon object" );
        var cloned = icon.clone();
        t.ok( cloned instanceof OpenLayers.Icon, "clone is an OpenLayers.Icon" );
        cloned.url = "b"
        t.eq( icon.url, "a", "icon.url doesn't change with clone's url" );
        t.eq( cloned.url, "b", "cloned.url does change when edited" );
    }

    function test_Icon_setOpacity(t) {
        t.plan( 2 );
        
        icon = new OpenLayers.Icon("a",new OpenLayers.Size(5,6));
        t.ok(!icon.imageDiv.style.opacity, "default icon has no opacity");
        
        icon.setOpacity(0.5);
        t.eq(parseFloat(icon.imageDiv.style.opacity), 0.5, "icon.setOpacity() works");
    }
    
    function test_Icon_isDrawn(t) {
        t.plan(4);

        var icon = {};

        //no imageDiv
        var drawn = OpenLayers.Icon.prototype.isDrawn.apply(icon, []);
        t.ok(!drawn, "icon with no imageDiv not drawn");

        //imageDiv no parentNode
        icon.imageDiv = {};
        drawn = OpenLayers.Icon.prototype.isDrawn.apply(icon, []);
        t.ok(!drawn, "icon with imageDiv with no parentNode not drawn");

        //imageDiv with parent
        icon.imageDiv.parentNode = {};
        drawn = OpenLayers.Icon.prototype.isDrawn.apply(icon, []);
        t.ok(drawn, "icon with imageDiv with parentNode drawn");

        //imageDiv with parent but nodetype 11
        icon.imageDiv.parentNode = {'nodeType': 11};
        drawn = OpenLayers.Icon.prototype.isDrawn.apply(icon, []);
        t.ok(!drawn, "imageDiv with parent but nodetype 11 not drawn");
    }



  </script>
</head>
<body>
</body>
</html>
